home *** CD-ROM | disk | FTP | other *** search
/ MacWorld: Complete Mac Interactive / Macworld Complete Mac Interactive CD)(1994).iso / The Best of BMUG / Utilities / Text and Speech / Alpha.5.76 / Tcl / UserCode / smart.tcl < prev    next >
Text File  |  1994-03-08  |  660b  |  43 lines

  1. set smartQuotes 1
  2.  
  3. proc dum {} {
  4.     beginningOfLine
  5. }
  6.  
  7. proc smartDQuote {} {
  8.     global smartQuotes
  9.     if {!$smartQuotes} { insertText {"}; return }
  10.     if {[leftQ]} {
  11.         insertText {``}
  12.     } else {
  13.         insertText {''}
  14.     }
  15. }
  16. ascii 0x22 <s> smartDQuote Tex
  17.  
  18. proc smartQuote {} {
  19.     global smartQuotes
  20.     if {!$smartQuotes} { insertText {'}; return }
  21.     if {[leftQ]} {
  22.         insertText {`}
  23.     } else {
  24.         insertText {'}
  25.     }
  26. }
  27. ascii 0x27 smartQuote Tex
  28.  
  29. proc leftQ {} {
  30.     if {[getPos] == 0} {return 1};
  31.     set q [lookAt [expr [getPos]-1]]
  32.     case $q in {
  33.         {\t}  {return 1}
  34.         {(}  {return 1}
  35.         {\{}  {return 1}
  36.         {[}  {return 1}
  37.         {<}  {return 1}
  38.         {\ } {return 1}
  39.         {\r} {return 1}
  40.     }
  41.     return 0
  42. }
  43.